﻿using System.Collections.Generic;
using VisionCloud.Domain.DtoModel.Ms;

namespace VisionCloud.Domain.Data
{
    public class GeniusItem
    {
        public GeniusItem(string firstLv, string secondLv)
        {
            this.FirstLv = firstLv;
            this.SecondLv = secondLv;
        }

        public string FirstLv { get; set; }
        public string SecondLv { get; set; }
    }

    /// <summary>
    /// 系统级别常量定义
    /// </summary>
    public class ConstRule
    {
        public const string RuleOsCategory = "OsCategory";
        public const string RuleSolutionPlatformCategory = "SolutionPlatformCategory";
        public const string RuleSolutionConfigCategory = "SolutionConfigCategory";
        public const string RuleLibsCategory = "LibsCategory";
    }

    /// <summary>
    /// 此文件暂代字典表来管理数据 ,后期应该从表来管理数据
    /// </summary>
    public static class Dict
    {
        public static string UploadFolder { get; set; } = "/FileFolder";
        public static string ChunkFolder { get; set; } = "/chunk";

        /// <summary>
        /// 工艺
        /// </summary>
        public static List<GeniusItem> BuildingCraft { get; private set; } = new List<GeniusItem>
        {
            new GeniusItem("结构工程", "铝模"),
            new GeniusItem("结构工程", "木模"),
            new GeniusItem("砌筑工程", "高精砌块"),
            new GeniusItem("砌筑工程", "普通砌块"),
            new GeniusItem("抹灰工程", string.Empty),
            new GeniusItem("楼地面工程", string.Empty),
        };

        #region 标准库

        public static List<StandardClass> S001 { get; private set; } = new List<StandardClass>()
        {
            new StandardClass()
            {
                Code = "robot",
                ClassName = "机器人测量标准",
                Items = new List<StandardItem>()
                {
                    new StandardItem()
                    {
                        Title = "方正性",
                        Unit = "mm",
                        Value = new[] {"0", "10"},
                        ValueDesc = "",
                        Code = "r-fangzhengxing",
                    },
                    new StandardItem()
                    {
                        Title = "阴阳角方正",
                        Unit = "mm",
                        Value = new[] {"0", "5"},
                        ValueDesc = "",
                        Code = "r-yinyang"
                    },
                    new StandardItem()
                    {
                        Title = "墙平面平整度-抹灰",
                        Unit = "mm",
                        Value = new[] {"0", "8"},
                        ValueDesc = "",
                        Code = "r-pingzhengdu",
                        SupportCraft = "抹灰"
                    },
                    new StandardItem()
                    {
                        Title = "墙平面平整度-铝模/免抹灰",
                        Unit = "mm",
                        Value = new[] {"0", "5"},
                        ValueDesc = "",
                        Code = "r-pingzhengdu",
                        SupportCraft = "铝模"
                    },
                    new StandardItem()
                    {
                        Title = "墙面垂直度-抹灰",
                        Unit = "mm",
                        Value = new[] {"0", "10"},
                        ValueDesc = "",
                        Code = "r-chuizhidu",
                        SupportCraft = "抹灰"
                    },
                    new StandardItem()
                    {
                        Title = "墙面垂直度-采用铝模且按精装交付时",
                        Unit = "mm",
                        Value = new[] {"0", "5"},
                        ValueDesc = "",
                        Code = "r-chuizhidu",
                        SupportCraft = "铝模"
                    },

                    new StandardItem()
                    {
                        Title = "楼板板底水平度极差|毛坯",
                        Unit = "mm",
                        Value = new[] {"0", "15"},
                        ValueDesc = "",
                        Code = "r-tianhua",
                        SupportStandard = "毛坯",
                    },
                    new StandardItem()
                    {
                        Title = "楼板板底水平度极差|精装",
                        Unit = "mm",
                        Value = new[] {"0", "12"},
                        ValueDesc = "",
                        Code = "r-tianhua",
                        SupportStandard = "精装",
                    },
                }
            }
        };

        public static List<StandardClass> S002 { get; private set; } = new List<StandardClass>()
        {
            new StandardClass()
            {
                ClassName="机器人测量标准",
                Code = "robot",
                Items = new List<StandardItem>()
                {
                    new StandardItem()
                    {
                        Title="墙平面平整度-普通砌块",
                        Unit="mm",
                        Value=new []{ "0", "8" },
                        ValueDesc="",
                        Code = "r-pingzhengdu",
                        SupportCraft = "普通砌块"
                    },
                    new StandardItem()
                    {
                        Title="墙平面平整度-高精砌块",
                        Unit="mm",
                        Value=new []{ "0", "5" },
                        ValueDesc="",
                        Code = "r-pingzhengdu",
                        SupportCraft = "高精砌块"
                    },
                    new StandardItem()
                    {
                        Title="墙面垂直度",
                        Unit="mm",
                        Value=new []{ "0", "5" },
                        ValueDesc="",
                        Code = "r-chuizhidu"
                    }
                }
            }
        };

        public static List<StandardClass> S003 { get; private set; } = new List<StandardClass>()
        {
            new StandardClass()
            {
                Code = "robot",
                ClassName = "机器人测量标准",
                Items = new List<StandardItem>()
                {
                    new StandardItem()
                    {
                        Title = "方正性",
                        Unit = "mm",
                        Value = new[] {"0", "10"},
                        ValueDesc = "",
                        Code = "r-fangzhengxing"
                    },
                    new StandardItem()
                    {
                        Title = "阴阳角方正",
                        Unit = "mm",
                        Value = new[] {"0", "4"},
                        ValueDesc = "",
                        Code = "r-yinyang"
                    },
                    new StandardItem()
                    {
                        Title = "墙平面平整度-集团标准",
                        Unit = "mm",
                        Value = new[] {"0", "4"},
                        ValueDesc = "",
                        Code = "r-pingzhengdu",
                        SupportCraft = "集团标准"
                    },
                    new StandardItem()
                    {
                        Title = "墙平面平整度-国家标准",
                        Unit = "mm",
                        Value = new[] {"0", "3"},
                        ValueDesc = "",
                        Code = "r-pingzhengdu",
                        SupportCraft = "国家标准"
                    },
                    new StandardItem()
                    {
                        Title = "墙面垂直度-集团标准",
                        Unit = "mm",
                        Value = new[] {"0", "4"},
                        ValueDesc = "",
                        Code = "r-chuizhidu",
                        SupportCraft = "集团标准"
                    },
                    new StandardItem()
                    {
                        Title = "墙面垂直度-国家标准",
                        Unit = "mm",
                        Value = new[] {"0", "3"},
                        ValueDesc = "",
                        Code = "r-chuizhidu",
                        SupportCraft = "国家标准"
                    }
                }
            }
        };

        #region 标准 注释2019/11/4

        //public static List<StandardClass> s001 = new List<StandardClass>()
        //{
        //    new StandardClass()
        //    {
        //        Code="robot",
        //        ClassName="机器人测量标准",
        //        Items=new List<StandardItem>()
        //        {
        //            new StandardItem()
        //            {
        //                Title="截面尺寸",
        //                Unit="mm",
        //                Value=new []{"-5","8"},
        //                Code = "robot-s1"
        //            },
        //            new StandardItem()
        //            {
        //                Title="墙平面平整度(抹灰)",
        //                Unit="mm",
        //                Value=new []{"8"},
        //                ValueDesc="",
        //                Code = "robot-s2-1"
        //            },
        //            new StandardItem()
        //            {
        //                Title="墙平面平整度（铝模/免抹灰）",
        //                Unit="mm",
        //                Value=new []{"5"},
        //                ValueDesc="",
        //                Code = "robot-s2-2"
        //            },
        //            new StandardItem()
        //            {
        //                Title="垂直度（抹灰）",
        //                Unit="mm",
        //                Value=new []{"10"},
        //                ValueDesc="",
        //                Code = "robot-s3-1"
        //            },
        //            new StandardItem()
        //            {
        //                Title="垂直度（采用铝模且按精装交付时）",
        //                Unit="mm",
        //                Value=new []{"5"},
        //                ValueDesc="",
        //                Code = "robot-s3-2"
        //            },
        //            new StandardItem()
        //            {
        //                Title="方正性（铝模/免抹灰）",
        //                Unit="mm",
        //                Value=new []{"10"},
        //                ValueDesc="",
        //                Code = "robot-s4"
        //            },
        //            new StandardItem()
        //            {
        //                Title="阴阳角方正（铝模/免抹灰）",
        //                Unit="mm",
        //                Value=new []{"5"},
        //                ValueDesc="",
        //                Code = "robot-s5"
        //            },
        //            new StandardItem()
        //            {
        //                Title="外窗洞口尺寸",
        //                Unit="mm",
        //                Value=new []{"-5","15"},
        //                ValueDesc="",
        //                Code = "robot-s6"
        //            }
        //        }
        //    },
        //    new StandardClass()
        //    {
        //        Code="manual",
        //        ClassName="人工测量标准",
        //        Items=new List<StandardItem>()
        //        {
        //            new StandardItem()
        //            {
        //                Title="截面尺寸",
        //                Unit="mm",
        //                Value=new []{"-5","8"},
        //                Code = "manual-s1"
        //            },
        //            new StandardItem()
        //            {
        //                Title="墙平面平整度(抹灰)",
        //                Unit="mm",
        //                Value=new []{"8"},
        //                ValueDesc="",
        //                Code = "manual-s2-1"
        //            },
        //        }
        //    }
        //};
        //public static List<StandardClass> s002 = new List<StandardClass>()
        //{
        //    new StandardClass()
        //    {
        //        ClassName="机器人测量标准",
        //        Code = "robot",
        //        Items = new List<StandardItem>()
        //        {
        //            new StandardItem()
        //            {
        //                Title="表面平整度",
        //                Unit="mm",
        //                Value=new []{"8"},
        //                ValueDesc="",
        //                Code = "robot-s1-1"
        //            },  new StandardItem()
        //            {
        //                Title="表面平整度（预制墙板/高精砌块）",
        //                Unit="mm",
        //                Value=new []{"5"},
        //                ValueDesc="",
        //                Code = "robot-s1-2"
        //            }, new StandardItem()
        //            {
        //                Title="垂直度",
        //                Unit="mm",
        //                Value=new []{"5"},
        //                ValueDesc="",
        //                Code = "robot-s2"
        //            }, new StandardItem()
        //            {
        //                Title="外窗洞口尺寸",
        //                Unit="mm",
        //                Value=new []{"-5","15"},
        //                ValueDesc="",
        //                Code = "robot-s3"
        //            }

        //        }

        //    }
        //};
        //public static List<StandardClass> s003 = new List<StandardClass>()
        //{
        //    new StandardClass()
        //    {
        //        Code="robot",
        //        ClassName="机器人测量标准",
        //        Items = new List<StandardItem>()
        //{
        //    new StandardItem()
        //    {
        //        Title="墙面表面平整度",
        //        Unit="mm",
        //        Value=new []{"4"},
        //        ValueDesc="",
        //        Code = "robot-s1-1"
        //    },  new StandardItem()
        //    {
        //        Title="墙面表面平整度（一、二线城市可选用国家规范中的高级抹灰验收标准）",
        //        Unit="mm",
        //        Value=new []{"3"},
        //        ValueDesc="",
        //        Code = "robot-s1-2"
        //    }, new StandardItem()
        //    {
        //        Title="墙面垂直度",
        //        Unit="mm",
        //        Value=new []{"4"},
        //        ValueDesc="",
        //        Code = "robot-s2-1"
        //    }, new StandardItem()
        //    {
        //        Title="墙面垂直度（一、二线城市可选用国家规范中的高级抹灰验收标准）",
        //        Unit="mm",
        //        Value=new []{"3"},
        //        ValueDesc="",
        //        Code = "robot-s2-2"
        //    }, new StandardItem()
        //    {
        //        Title="阴阳角方正",
        //        Unit="mm",
        //        Value=new []{"4"},
        //        ValueDesc="",
        //        Code = "robot-s3"
        //    }, new StandardItem()
        //    {
        //        Title="方正性",
        //        Unit="mm",
        //        Value=new []{"10"},
        //        ValueDesc="",
        //        Code = "robot-s4"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（高度（毛坯）)",
        //        Unit="mm",
        //        Value=new []{"-10","10"},
        //        ValueDesc="",
        //        Code = "robot-s5-1"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（宽度（毛坯））)",
        //        Unit="mm",
        //        Value=new []{"-10","10"},
        //        ValueDesc="",
        //        Code = "robot-s5-2"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（厚度（毛坯）)",
        //        Unit="mm",
        //        Value=new []{"-5","10"},
        //        ValueDesc="",
        //        Code = "robot-s5-3"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（高度（精装）)",
        //        Unit="mm",
        //        Value=new []{"0","15"},
        //        ValueDesc="",
        //        Code = "robot-s5-4"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（宽度（精装）)",
        //        Unit="mm",
        //        Value=new []{"0","20"},
        //        ValueDesc="",
        //        Code = "robot-s5-5"
        //    },new StandardItem()
        //    {
        //        Title="门洞尺寸偏差（厚度（精装））",
        //        Unit="mm",
        //        Value=new []{"-5","10"},
        //        ValueDesc="",
        //        Code = "robot-s5-6"
        //    },new StandardItem()
        //    {
        //        Title="开间,进深偏差,极差",
        //        Unit="mm",
        //        Value=new []{"-10","15"},
        //        ValueDesc="",
        //        Code = "robot-s6"
        //    }
        //}
        //    }
        //};

        #endregion 标准 注释2019/11/4

        #endregion 标准库
    }
}